﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IPC.Communication.Framework
{
    internal class HslSecurity
    {
        internal static byte[] ByteEncrypt(byte[] enBytes)
        {
            bool flag = enBytes == null;
            byte[] result;
            if (flag)
            {
                result = null;
            }
            else
            {
                byte[] array = new byte[enBytes.Length];
                for (int i = 0; i < enBytes.Length; i++)
                {
                    array[i] = (byte)(enBytes[i] ^ (byte)181);
                }
                result = array;
            }
            return result;
        }

        internal static void ByteEncrypt(byte[] enBytes, int offset, int count)
        {
            for (int i = offset; i < offset + count; i++)
            {
                bool flag = i < enBytes.Length;
                if (!flag)
                {
                    break;
                }
                enBytes[i] ^= 181;
            }
        }

        internal static byte[] ByteDecrypt(byte[] deBytes)
        {
            return HslSecurity.ByteEncrypt(deBytes);
        }
    }
}
